The Evolution of Software Size : A Search for Value
نویسنده
چکیده
W hen I first started programming, it never occurred to me to think about the size of the software I was developing. This was true for several reasons. First of all, when I first learned to program, software had a tactile quality through the deck of punched cards required to run a program. If I wanted to size the software, there was something I could touch, feel, or eyeball to get a sense of how much there was. Secondly, I had no real reason to care how much code I was writing; I just kept writing until I got the desired results and then moved on to the next challenge. Finally, as an engineering student, I was expected to learn how to program but was never taught to appreciate the fact that developing software was an engineering discipline. The idea of size being a characteristic of software was foreign to me—what did it really mean and what was the context? And why would anyone care? Now, 25 years later, if you Google the phrase software size you will get more than 100,000 hits. Clearly, there is a reason to care about software size and there are lots of people out there worrying about it. And still, I am left to wonder: What does it really mean and what is the context? And why does anyone care? It turns out that there are several very good reasons for wanting to measure software size. Software size can be an important component of a productivity computation , a cost or effort estimate, or a quality analysis. More importantly, a good software size measure could conceivably lead to a better understanding of the value being delivered by a software application. The problem is that there is no agreement among professionals as to the right units for measuring software size or the right way to measure within selected units. This article examines the various approaches used to measure software size as the discipline of software engineering evolved throughout the last 25 years. It focuses on reasons why these approaches were attempted, the technological or human factors that were in play, and the degree of success achieved in the use of each approach. Finally, it addresses some of the reasons why the software engineering community is still searching for the right way to measure software size. As software development moved out of the lab and into …
منابع مشابه
A Differential Evolution and Spatial Distribution based Local Search for Training Fuzzy Wavelet Neural Network
Abstract Many parameter-tuning algorithms have been proposed for training Fuzzy Wavelet Neural Networks (FWNNs). Absence of appropriate structure, convergence to local optima and low speed in learning algorithms are deficiencies of FWNNs in previous studies. In this paper, a Memetic Algorithm (MA) is introduced to train FWNN for addressing aforementioned learning lacks. Differential Evolution...
متن کاملOPTIMAL DESIGN OF GRAVITY DAM USING DIFFERENTIAL EVOLUTION ALGORITHM
The shape optimization of gravity dam is posed as an optimization problem with goals of minimum value of concrete, stresses and maximum safety against overturning and sliding need to be achieved. Optimally designed structure generally saves large investments especially for a large structure. The size of hydraulic structures is usually huge and thus requires a huge investment. If the optimizatio...
متن کاملControl of nonlinear systems using a hybrid APSO-BFO algorithm: An optimum design of PID controller
This paper proposes a novel hybrid algorithm namely APSO-BFO which combines merits of Bacterial Foraging Optimization (BFO) algorithm and Adaptive Particle Swarm Optimization (APSO) algorithm to determine the optimal PID parameters for control of nonlinear systems. To balance between exploration and exploitation, the proposed hybrid algorithm accomplishes global search over the whole search spa...
متن کاملControl of nonlinear systems using a hybrid APSO-BFO algorithm: An optimum design of PID controller
This paper proposes a novel hybrid algorithm namely APSO-BFO which combines merits of Bacterial Foraging Optimization (BFO) algorithm and Adaptive Particle Swarm Optimization (APSO) algorithm to determine the optimal PID parameters for control of nonlinear systems. To balance between exploration and exploitation, the proposed hybrid algorithm accomplishes global search over the whole search spa...
متن کاملAn NLP Approach for Evolution of Heat Exchanger Networks Designed by Pinch Technology
Common methods to design heat exchanger networks (HENs) by pinch technology usually need an evolutionary step to reduce the number of heat transfer units. This step <span style="font-size: 10pt; color:...
متن کاملConstrained Nonlinear Optimal Control via a Hybrid BA-SD
The non-convex behavior presented by nonlinear systems limits the application of classical optimization techniques to solve optimal control problems for these kinds of systems. This paper proposes a hybrid algorithm, namely BA-SD, by combining Bee algorithm (BA) with steepest descent (SD) method for numerically solving nonlinear optimal control (NOC) problems. The proposed algorithm includes th...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009